MS Access bietet eine Fülle systemdefinierter (vordefinierter, eingebauter oder standardisierter) Objekte an. Eingebaute Objekte, welche der Programmierer anstelle selbstdefinierter verwenden kann, sind zum Beispiel ...
Dialogfelder wie InputBox (statt benutzerdefinierter Formulare)
Gültigkeitstests und -meldungen (statt selbst programmierter Gültigkeitstests)
Formate (statt benutzerdefinierter Formatierungsprozeduren).
Ein Beispiel für die letzte Kategorie ist die vordefinierte automatische Umwandlung einer Eingabe in Gross- bzw. Kleinbuchstaben. Die folgenden Ausschnitte aus dem Unterformular Zuordnungslösungen zeigen ...
die Vereinbarung der ersten Spalte des Unterformulars in der Entwurfsansicht
Wenn der Benutzer einen Kleinbuchstaben eingibt (erster Bildschirmausschnitt), erscheint nach dem
Verlassen des Steuerelements automatisch ein Grossbuchstabe. Der zweite Bildschirmausschnitt
erscheint, wenn die Entwicklerin in der Entwurfssicht auf das Textfeld
TxfBuchstabenpräfix klickt, »Alt/Enter
drückt
und > als Wert der Eigenschaft Format eingibt.
Die Verwendung systemdefierter Objekte spart viel Zeit. Wenn der Entwickler das Konversionsproblem selbst löst, dann muss er statt > eine selbstdefinierte Ereignisprozedur einfügen. Die folgende Subroutine TxfBuchstabenpräfix_KeyPress reagiert zum Beispiel auf einen Tastendruck im Feld TxfBuchstabenpräfix und konvertiert einen eingegebenen Kleinbuchstaben in einen Grossbuchstaben:
'-- Konvertiert einen Kleinbuchstaben in einen Grossbuchstaben ' (Tastencode ist ein ANSI- oder UNICODE-Tastencode und wird by Reference übergeben) Private Sub TxfBuchstabenpräfix_KeyPress(Tastencode As Integer) Dim strZeichen As String ' Chr konvertiert das Integeraequivalent Tastencode in eine Zeichenfolge strZeichen = Chr(Tastencode) ' UCase konvertiert in einen Großbuchstaben und Asc wieder in ein Integeraequivalent Tastencode = Asc( UCase(strZeichen) ) End Sub
Im Unterschied zu > der Formulareigenschaft "Format" ändert TxfBuchstabenpräfix_KeyPress allerdings nicht nur die Darstellung im Formular, sondern auch jene in der Basistabelle, weil die Konversion bereits bei Eingabe (und nicht erst nach Feldwechsel) erfolgt. Damit die Umwandlung auch auf die Basistabelle durchschlägt, müsste der Entwickler auch die Tabelleneigenschaft auf den Wert > setzen. Die Wahl einer selbst definierten Ereignisprozedur kann also selbst dann Sinn machen, wenn eine ähnliche Funktionalität bereits eingebaut ist.
Anwendungspakete wie MS Office stellen eine Fülle vordefinierter Objekte zur Verfügung. Ein grosser Teil der Entwicklungsarbeit besteht in der Suche geeigneter systemdefinierter Objekte. Eine wertvolle Hilfe ist dabei der Objektkatalog.